#ifndef KEY_H_
#define KEY_H_
#include "../ArchivoDeBloques/Registro.h"
#include "../Util/Util.h"
#include <iostream>
#include <string>
#include <sstream>
#include <cstring>

using namespace std;

class Key {

private:
	std::string valor;
	int clave; /*clave se almacena en el registro*/
	/*registro donde se almacena la clave a guardar en el archivo de bloques*/
	Registro* registro;

public:

	/*
	*Crea la key con clave y valor y la almacena en un registro
	**/
	Key(int clave, std::string valor);

	virtual ~Key();

    /*
    * Devuelve clave
    **/
	int obtenerClave();

	/**
	 * Devuelve el valor
	 */
	std::string obtenerValor();

	/*
	*Devuelve el registro
	**/
	Registro* obtenerRegistro();

	/*
	 * Modifica el valor de le key
	 * */
	void modificarValor(string valor);
};

#endif 
